﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Crosland.Automotriz.Facade.Interface;
using Crosland.Automotriz.Core;
using Crosland.Automotriz.Logic.Linq;
namespace Crosland.Automotriz.Facade.Facade
{
    public class FacadeSistema : iFacadeSistema
    {


        clsT_Man_Modelo_ImagenLogic cls_man_modelo_imagenlogic = new clsT_Man_Modelo_ImagenLogic();
        //public List<TD_MODELO> listar() {

        //         return cls_man_modelo_imagenlogic.listar();

        //     }

        public List<TD_MODELO> listar_filtro_modelo_s()
        {
            clsTd_ModeloLogic clstd_modelologic = new clsTd_ModeloLogic();
            return clstd_modelologic.listar_filtro_S();

        }
        public List<TD_MODELO> Listar_filtro_modelo_N()
        {
            clsTd_ModeloLogic clstd_modelologic = new clsTd_ModeloLogic();
            return clstd_modelologic.Listar_filtro_N();
        }

        public IEnumerable<Object> listar_Modelo_XT_Man_Modelo_Imagen(string des_marca, string tipo_rueda)
        {
            clsTd_ModeloLogic clstd_modelologic = new clsTd_ModeloLogic();
            return clstd_modelologic.listarXT_Man_Modelo_Imagen(des_marca, tipo_rueda);
        }

        public bool AnularT_man_sistema_articulo(int id_modelo, int id_sistema, string cod_material)
        {
            clsT_Man_Sistema_ArticuloLogic clst_man_sistema_articulo = new clsT_Man_Sistema_ArticuloLogic();
            return clst_man_sistema_articulo.AnularT_man_sistema_articulo(id_modelo, id_sistema, cod_material);
        }

        public IEnumerable<Object> listarXT_Man_Modelo_Imagen_likeMarca(string des_marca, string tipo_rueda)
        {
            clsTd_ModeloLogic clstd_modelologic = new clsTd_ModeloLogic();
            return clstd_modelologic.listarXT_Man_Modelo_Imagen_likeMarca(des_marca, tipo_rueda);
        }

        public bool Actualizar_Estado_Modelo_S(int ID_MODELO)
        {
            clsTd_ModeloLogic clstd_modelologic = new clsTd_ModeloLogic();
            return clstd_modelologic.Actualizar_Estado_S(ID_MODELO);

        }

        public bool Actualizar_Estado_Modelo_N(int ID_MODELO)
        {
            clsTd_ModeloLogic clstd_modelologic = new clsTd_ModeloLogic();
            return clstd_modelologic.Actualizar_Estado_N(ID_MODELO);
        }

        public bool Insertar(T_MAN_MODELO_IMAGEN Obj)
        {
            return cls_man_modelo_imagenlogic.Insertar(Obj);
        }

        public int UltimoNumero()
        {
            return cls_man_modelo_imagenlogic.UltimoNumero();
        }

        public List<T_MAN_MODELO_IMAGEN> ListarT_Man_filtro(int id_modelo)
        {
            return cls_man_modelo_imagenlogic.ListarT_Man_filtro(id_modelo);
        }

        public List<TD_MODELO> listar_filtro_modelo(string des_modelo, string des_marca)
        {
            clsTd_ModeloLogic clstd_modelologic = new clsTd_ModeloLogic();
            return clstd_modelologic.listar_filtro_like(des_modelo, des_marca);
        }

        public IEnumerable<Object> listar_filtro_modelo_sistema(int id_modelo)
        {
            //clsT_Man_SistemaLogic clst_man_sistemaLogic = new clsT_Man_SistemaLogic();
            return new clsT_Man_SistemaLogic().listar_filtro_modelo_sistema(id_modelo);
            //return clst_man_sistemaLogic.listar_filtro_modelo_sistema(id_modelo);
        }

        public IEnumerable<Object> listar_sistema_articulo(int id_sistema, int id_modelo)
        {
            clsT_Man_Sistema_ArticuloLogic clst_man_sistema_articuloLogic = new clsT_Man_Sistema_ArticuloLogic();
            return clst_man_sistema_articuloLogic.listar_sistema_articulo(id_sistema, id_modelo);
        }

        public IEnumerable<Object> listar_sistema_articulo(int intIdSistema, int intIdModelo, int intNroPag)
        {
            return new clsT_Man_Sistema_ArticuloLogic().listar_sistema_articulo(intIdSistema, intIdModelo, intNroPag);
        }

        public IEnumerable<Object> Listar()
        {
            clsT_Man_SistemaLogic cls_t_man_sistemalogic = new clsT_Man_SistemaLogic();
            return cls_t_man_sistemalogic.Listar();
        }

        public bool Insertar_Sub_Sistema(T_MAN_SISTEMA obj)
        {
            clsT_Man_SistemaLogic cls_t_man_sistemalogic = new clsT_Man_SistemaLogic();
            return cls_t_man_sistemalogic.Insertar(obj);
        }

        public bool Modificar_Sub_Sistema(T_MAN_SISTEMA obj)
        {
            clsT_Man_SistemaLogic cls_t_man_sistemalogic = new clsT_Man_SistemaLogic();
            return cls_t_man_sistemalogic.Modificar(obj);
        }

        public bool Eliminar_Sub_Sistema(T_MAN_SISTEMA obj)
        {
            clsT_Man_SistemaLogic cls_t_man_sistemalogic = new clsT_Man_SistemaLogic();
            return cls_t_man_sistemalogic.Eliminar(obj);
        }

        public List<T_MAN_SISTEMA> listar_Sub_Sistema()
        {
            clsT_Man_SistemaLogic cls_t_man_sistemalogic = new clsT_Man_SistemaLogic();
            return cls_t_man_sistemalogic.listarSistema();
        }

        public List<T_MAN_SISTEMA> listar_Sub_Sistema2()
        {
            clsT_Man_SistemaLogic cls_t_man_sistemalogic = new clsT_Man_SistemaLogic();
            return cls_t_man_sistemalogic.listarSistema2();
        }

        public int ObtenerIdSistema()
        {
            clsT_Man_SistemaLogic cls_t_man_sistemalogic = new clsT_Man_SistemaLogic();
            return cls_t_man_sistemalogic.ObtenerIdSistema();
        }

        public List<T_MAN_ARTICULO> listar_Sistema_Articulos()
        {
            clsT_Man_ArticuloLogic clst_man_articulologic = new clsT_Man_ArticuloLogic();
            return clst_man_articulologic.listarArticulos();
        }


        public bool Insertar_Sistema_Articulos(T_MAN_ARTICULO Obj)
        {
            clsT_Man_ArticuloLogic clst_man_articulologic = new clsT_Man_ArticuloLogic();
            return clst_man_articulologic.Insertar(Obj); ;
        }

        public bool Modificar_Sistema_Articulos(T_MAN_ARTICULO obj)
        {
            clsT_Man_ArticuloLogic clst_man_articulologic = new clsT_Man_ArticuloLogic();
            return clst_man_articulologic.Modificar(obj);
        }

        public bool Eliminar_Sistema_Articulos(T_MAN_SISTEMA obj)
        {
            clsT_Man_ArticuloLogic clst_man_articulologic = new clsT_Man_ArticuloLogic();
            return clst_man_articulologic.Eliminar(obj);
        }

        public bool Insertar_t_man_sistema_articulos(T_MAN_SISTEMA_ARTICULO Obj)
        {
            clsT_Man_Sistema_ArticuloLogic clst_man_sistema_articuloLogic = new clsT_Man_Sistema_ArticuloLogic();
            return clst_man_sistema_articuloLogic.Insertar(Obj);
        }

        public bool Modificar_t_man_sistema_articulos(T_MAN_SISTEMA_ARTICULO Obj)
        {
            clsT_Man_Sistema_ArticuloLogic clst_man_sistema_articuloLogic = new clsT_Man_Sistema_ArticuloLogic();
            return clst_man_sistema_articuloLogic.Modificar(Obj);
        }


        public List<T_MAN_SISTEMA> listarSistema_filtro(string descripcion)
        {
            clsT_Man_SistemaLogic clst_man_sistemaLogic = new clsT_Man_SistemaLogic();
            return clst_man_sistemaLogic.listarSistema_filtro(descripcion);
        }


        public bool Insertar_T_Man_Sistema_Modelo(T_MAN_SISTEMA_MODELO Obj)
        {
            clsT_Man_Sistema_ModeloLogic clst_man_sistema_modeloLogic = new clsT_Man_Sistema_ModeloLogic();
            return clst_man_sistema_modeloLogic.Insertar(Obj);
        }

        public bool Eliminar_T_Man_Sistema_Modelo(T_MAN_SISTEMA_MODELO obj)
        {
            clsT_Man_Sistema_ModeloLogic clst_man_sistema_modeloLogic = new clsT_Man_Sistema_ModeloLogic();
            return clst_man_sistema_modeloLogic.Eliminar(obj);
        }

        public bool Modificar_T_Man_Sistema_Modelo(T_MAN_SISTEMA_MODELO obj)
        {
            clsT_Man_Sistema_ModeloLogic clst_man_sistema_modeloLogic = new clsT_Man_Sistema_ModeloLogic();
            return clst_man_sistema_modeloLogic.Modificar(obj);
        }

        public List<T_MAN_ARTICULO> listar_T_Man_Articulos_Like(string cod_material, string nom_material_ingles)
        {
            clsT_Man_ArticuloLogic clst_man_articulos = new clsT_Man_ArticuloLogic();
            return clst_man_articulos.listarArticulosLike(cod_material, nom_material_ingles);
        }

        public IEnumerable<Object> listarT_Man_articulo_likexmodelo(string des_material)
        {
            clsT_Man_ArticuloLogic clst_man_articulos = new clsT_Man_ArticuloLogic();
            return clst_man_articulos.listarT_Man_articulo_likexmodelo(des_material);
        }

        public bool Eliminar_T_Man_Sistema_Ariticulo(T_MAN_SISTEMA_ARTICULO obj)
        {
            clsT_Man_Sistema_ArticuloLogic clst_man_sistema_articulo = new clsT_Man_Sistema_ArticuloLogic();
            return clst_man_sistema_articulo.Eliminar(obj);
        }

        public IEnumerable<Object> listarT_Man_Modelo_Imagen(int id_modelo)
        {
            clsT_Man_Modelo_ImagenLogic clsT_Man_Modelo_Imagenlogic = new clsT_Man_Modelo_ImagenLogic();
            return clsT_Man_Modelo_Imagenlogic.listarT_Man_Modelo_Imagen(id_modelo);
        }

        public bool eliminarT_Man_Modelo_Imagen(T_MAN_MODELO_IMAGEN obj)
        {
            clsT_Man_Modelo_ImagenLogic clsT_Man_Modelo_Imagenlogic = new clsT_Man_Modelo_ImagenLogic();
            return clsT_Man_Modelo_Imagenlogic.Eliminar(obj);
        }

        public bool ActualizaEstadoArticulo(int id_modelo, int id_sistema, string cod_material)
        {
            clsT_Man_Sistema_ArticuloLogic clst_man_sistema_articulologic = new clsT_Man_Sistema_ArticuloLogic();
            return clst_man_sistema_articulologic.ActualizaEstadoArticulo(id_modelo, id_sistema, cod_material);
        }

        public bool ActualizaDescripcionImagenT_Man_Sistema_Modelo()
        {
            clsT_Man_Sistema_ModeloLogic clst_man_sistema_modeloLogic = new clsT_Man_Sistema_ModeloLogic();
            return clst_man_sistema_modeloLogic.ActualizaDescripcionImagen();
        }
    }
}
